﻿ using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Domain.Entity
{
    public class Account
    {
        public Account()
        {
            this.UserFeedback = new HashSet<Feedback>();
            this.UserReviews = new HashSet<Review>();
            this.GameViewHistory = new HashSet<Game>();
        }

        [Key]
        public int Id { get; set; }

        [Required]
        [Display(Name = "First Name")]
        public string FirstName { get; set; }

        [Required]
        [Display(Name = "Last Name")]
        public string LastName { get; set; }

        [Required]
        [Display(Name = "Date Of Birth")]
        public DateTime DateOfBirth { get; set; }

        [Required]
        public string Username { get; set; }

        [Display(Name = "Twitter Username")]
        public string TwitterName { get; set; }

        public string LayoutColor { get; set; }

        public virtual ICollection<Review> UserReviews { get; set; }

        [InverseProperty("Account")]
        public virtual ICollection<Feedback> UserFeedback { get; set; }

        public virtual ICollection<Game> GameViewHistory { get; set; }
    }
}
